home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 27 / CU Amiga Magazine's Super CD-ROM 27 (1998)(EMAP Images)(GB)[!][issue 1998-10].iso / GoodBye / JohnKennedy / December94.lha / FAQ2.doc < prev    next >
Encoding:
Text File  |  1994-11-16  |  6.4 KB  |  69 lines

  1. Common Questions
  2.  
  3.  
  4. Everything you ever wanted to know about programming the
  5. Amiga, by John Kennedy.
  6.  
  7.  
  8. 1. Does the Amiga have a built-in programming language?
  9.  
  10. Yes and no. In the good old days, computers came with a programming language as part of the ROM (operating system is really too grand a term for the Spectrums and Amstrad CPCs of this world). The programming language was usually a very of BASIC, with some extra commands to deal with the
  11. specific features of the computer.
  12.  
  13. The Amiga does not have a programming language in ROM, but all Amiga's with Workbench 2 or better come with a programming language called ARexx.
  14.  
  15. 2. My Amiga A1200 doesn't seem to have ARexx?
  16.  
  17. It probably does you know - but there are no manuals for it supplied with the A1200. A slim (but useful) volume on ARexx comes with the A4000, but that's hardly a reason to buy one.
  18.  
  19. 3. Where can I find out more about it?
  20.  
  21. There are several books available. One of the best is "Using ARexx on the Amiga" published by Abacus, although there are others "The ARexx Cookbook" for one. There are also many help files in the Public Domain if you look around.
  22.  
  23. 4. What can I do with ARexx?
  24.  
  25. ARexx is an "Interprocess Communication Language", whichmeans it is designed to work with other programs. For example, if you paint program is ARexx compatible (or has an ARexx "Port") you can use ARexx to create macros - repeat many operations over again. 
  26.  
  27. An ARexx program, or "Script", can also be used to link to separate programs. Many pieces of hardware come with driver software which supports ARexx. So for example, you could use your Image Processing program to link directly with a 24bit graphics card and video digitiser.
  28.  
  29. 5. Can I write games with it?
  30.  
  31. Although ARexx is a fully-featured programming language in its own right, it's not particularly fast. You certainly could use it to write a non-action game (for example a Text Adventure) but it would not be possible to write a fast-moving arcade game with ARexx.
  32.  
  33. It is still a useful tool though, and if you can find documentation, it's a good way to learn programming.
  34.  
  35. 6. What other programming languages are there?
  36.  
  37. Sticking with BASIC-like languages, there is HiSoft BASIC, AMOS and Blitz BASIC II. Then you have HiSoft Pascal, Lattice SAS/C and 680x0 Assembler. There are other languages in the public domain, including Fortran. If there is COBOL I have yet to see it - and don't really want to, thank you very much.
  38.  
  39. 7. Which are best for games / serious projects?
  40.  
  41. For games the easiest programming languages are those which include lots of dedicated commands to handle graphics and sounds. AMOS and Blitz BASIC II are both full of commands to greatly simplify displaying pictures, moving sprites and making noise. Both are extremely fast. Take a look at the CD32 game "Guardian" - it was written by the team that produced Blitz
  42. BASIC.
  43.  
  44. If you are still a fan of BASIC, the new HiSoft BASIC is an extremely fully-featured implementation. It supports the Amiga's operating system through the official library calls rather than with gee-whiz commands, which makes it hard work to get special effects from the Amiga's custom hardware. However, it's a good implementation of BASIC: you just have to wonder why when there are a lot of better languages around.
  45.  
  46. One of the most popular is C. It looks like gobbledegook, and has been described as a macro-assembler, but it's a great way to write programs which run extremely quickly. It's also the language which will get you a job in  programming in the Real World. SAS/C now includes C++ as
  47. part of it (a more advanced language) and is perfectly fast enough to write arcade games with. Another popular option is the DICE compiler which has recently turned commercial for a lot less than the SAS/C system.
  48.  
  49. Half-way between BASIC and C comes Pascal. The HiSoft version is compatible with the PC standard Turbo Pascal and is therefore potentially very useful to students who may find they have to use Pascal as part of their course.
  50.  
  51. Finally we have Assembler - the ultimate way to program. Learning assembler is not easy (one mistake and you tend to crash the computer) although with a good assembler (Devpac is the only sensible choice) it's not too bad. Programming large projects in Assembler is not recommended, although fanatics will swear (rather sadly) that real men don't use anything else. If you need your code to go as fast as possible, and you don't need large complicated data structures or algorithms, then Assembler is the only choice.
  52.  
  53. 8. Can I use the Amiga hardware directly?
  54.  
  55. Yes you can - you bought it after all, you can do what you like with it. It is possible to write programs which poke values directly into the registers of the custom chips rather than make use of the operating system library calls. The disadvantage is that you cannot guarantee that your
  56. program will run on any other Amiga, or even on your Amiga if you add some extra memory or a new processor. If at all possible you should stick to the Operating System routines, but it you really don't want too, you don't have to get nasty about it. There are plenty of polite ways to make use of the Amiga hardware by requesting resources and always poking in the right places.
  57.  
  58. 9. Where can I get documentation on programming?
  59.  
  60. There are a few text files in the Public Domain such as "HowToCode", but for best results you should buy the official documentation. The big grey Amiga programming books are extremely useful, and the hardware manual is interesting reading - although extremely out of date now (it's stuck at
  61. ECS level in A500+ rather than the AGA level in the A1200) and there are no plans for an updated version.
  62.  
  63. However, you can get a great deal of information directly from Commodore UK who produce a Native Developer kit. For less than £30 you get several disks crammed with essential programming information. Don't leave home without it.
  64.  
  65. 10. What is an authoring package?
  66.  
  67. Unlike a programming language, an authoring system tries to allow non-programmers to write programs. Packages such as CanDo, Help (and to a lesser degree Scala and MediaPoint) provide a point-and-click way of writing programs. You want a picture display? Then load it in and position it. Need a sample replayed? Click on the loud-speaker icon. 
  68.  
  69. Most have an underlying scripting language which can achieve some extremely flexible results. Again, don't expect an arcade game creation system: but it is possible to knock-up graphical adventure games, databases, spreadsheets, interactive demos, utility programs...